Typically when a computer system is powered on, firmware associated with the computer system starts to execute. The firmware initializes the computer system, for example, by creating structures that represent various devices the computer system will communicate with and causing the operating system to be loaded, among other things. The firmware passes control to the operating system after it has been loaded. The operating system depends on the firmware to initialize the computer system in a way that enables the operating system to execute successfully. For example, one type of firmware may be used for one type of operating system and another type of firmware has been typically used for another type of operating system. Various firmwares may support different feature sets for different operating systems.
The drawings referred to in this description should not be understood as being drawn to scale except if specifically noted.